// 时钟分频 The clock frequency division
module freq_div_in_clk #
(
    // 产生us脉冲信号的输入时钟频率，单位MHz，最大支持4GHz的时钟频率
    parameter    DIV_COEF  = 12'd50 // 分频系数，即DIV_COEF个时钟周期后输出信号
)
(
    input                           clk, 			// 输入时钟频率
    input                           rst_n, 		// 复位信号，低电平有效
    output                      		out_p, 		// 分频DIV_COEF倍后的输出信号
	 output reg [11:0] 					div_cnt		// 分频计数器，作为输出信号供其他模块使用
);

// 用输入脉冲产生DIV_COEF倍分频脉冲
always @(posedge clk) begin
    if (~rst_n) div_cnt <= 1'b0;
    else if (div_cnt < (DIV_COEF - 1'b1)) div_cnt <= div_cnt + 1'b1;
    else div_cnt <= 1'b0;
end

assign out_p = (div_cnt == DIV_COEF - 1'b1) ? 1'b1 : 1'b0;

endmodule  //freq_div_in_clk